Debian

Debian
Debian logo
Screenshot of Debian 5.0 ("Lenny")
Debian GNU/Linux 5.0 ("Lenny") with GNOME
Company / developer Debian Project
OS family Unix-like
Working state Current
Source model Free and open source software
Initial release 16 August 1993 (1993-08-16)
Available language(s) 63 languages[1]
Update method APT (several front-ends available)
Package manager dpkg
Supported platforms IA-32, x86-64, PowerPC, SPARC, DEC Alpha, ARM, MIPS, PA-RISC, S390, IA-64
Kernel type Monolithic (Linux, FreeBSD), Micro (Hurd)
Userland GNU
Default user interface GNOME, KDE, Xfce, and LXDE
License Free software, mainly the GNU GPL, and other licenses[2]
Official website www.debian.org

Debian (pronounced /ˈdɛbiən/) is a computer operating system composed of software packages released as free and open source software especially under the GNU General Public License and other free software licenses.[3] The primary form, Debian GNU/Linux, which uses the Linux kernel and GNU OS tools,[4] is a popular and influential GNU/Linux distribution.[5] It is distributed with access to repositories containing thousands of software packages ready for installation and use. Debian is known for relatively strict adherence to the Unix and free software philosophies[6] as well as using collaborative software development and testing processes.[7] Debian can be used as a desktop as well as server operating system. It focuses on stability and security and is used as a base for many other distributions.

Contents

Organization

The Debian Project is governed by the Debian Constitution and the Social Contract which set out the governance structure of the project as well as explicitly stating that the goal of the project is the development of a free operating system.[8][9] Debian is developed by over one thousand volunteers from around the world and supported by donations through several non-profit organizations around the world. Most important of these is Software in the Public Interest,[10] the owner of the Debian trademark and umbrella organization for various other community free software projects.[11]

Thus, the Debian Project is an independent decentralized organization; it is not backed by a company like some other GNU/Linux distributions such as Ubuntu, openSUSE, Fedora, and Mandriva. The cost of developing all the packages included in Debian 4.0 etch (283 million lines of code), using the COCOMO model, has been estimated to be close to US$13 billion.[12] As of April 2, 2009, Ohloh estimates that the codebase of the Debian GNU/Linux project (45 million lines of code), using the COCOMO model, would cost about US$819 million to develop.[13]

Features

Many distributions are based on Debian, including Ubuntu, MEPIS, Dreamlinux, Damn Small Linux, Xandros, Knoppix, BackTrack, Linspire, sidux, Kanotix, Parsix and LinEx, among others.[14]

Debian is known for an abundance of options. The current stable release includes over twenty five thousand software packages for twelve[15] computer architectures. These architectures range from the Intel/AMD 32-bit/64-bit architectures commonly found in personal computers to the ARM architecture commonly found in embedded systems and the IBM eServer zSeries mainframes.[16] Prominent features of Debian are the APT package management system, repositories with large numbers of packages, strict policies regarding packages, and the high quality of releases.[14] These practices allow easy upgrades between releases as well as automated installation and removal of packages.

The Debian standard install makes use of the GNOME desktop environment. It includes popular programs such as OpenOffice.org, Iceweasel (a rebranding of Firefox), Evolution mail, CD/DVD writing programs, music and video players, image viewers and editors, and PDF viewers. There are pre-built CD images for KDE, Xfce and LXDE as well.[17] The remaining discs, which span five DVDs or over thirty CDs, contain all packages currently available and are not necessary for a standard install. Another install method is via a net install CD which is much smaller than a normal install CD/DVD. It contains only the bare essentials needed to start the installer and downloads the packages selected during installation via APT.[18] These CD/DVD images can be freely obtained by web download, BitTorrent, jigdo or buying them from online retailers.[19]

History

1993–1998

Debian was first announced on 16 August 1993 by Ian Murdock.[20] Murdock initially called the system "the Debian Linux Release".[21] Prior to Debian's release, the Softlanding Linux System (SLS) had been the first GNU/Linux distribution compiled from various software packages, and was a popular basis for other distributions in 1993-1994.[22] The perceived poor maintenance and prevalence of bugs in SLS[23] motivated Murdock to launch a new distribution.

In 1993 Murdock also released the Debian Manifesto,[24] outlining his view for the new operating system. In it he called for the creation of a distribution to be maintained in an open manner, in the spirit of Linux and GNU. He formed the name "Debian" as a combination of the first name of his then-girlfriend Debra Lynn and his own first name.[25]

The Debian Project grew slowly at first and released the first 0.9x versions in 1994 and 1995. During this time it was sponsored by the Free Software Foundation's GNU project.[26] The first ports to other, non-i386 architectures began in 1995, and the first 1.x version of Debian was released in 1996.

In 1996, Bruce Perens replaced Ian Murdock as the project leader. In the same year, fellow developer Ean Schuessler suggested that Debian should establish a social contract with its users. He distilled the resulting discussion on Debian mailing lists into the Debian Social Contract and the Debian Free Software Guidelines, defining fundamental commitments for the development of the distribution. He also initiated the creation of the legal umbrella organization, Software in the Public Interest.[10]

Perens left the project in 1998 before the release of the first glibc-based Debian, 2.0.

1999–2004

The Project elected new leaders and made two more 2.x releases, each including more ports and packages. The Advanced Packaging Tool was deployed during this time and the first port to a non-Linux kernel, Debian GNU/Hurd, was started. The first Linux distributions based on Debian, namely Libranet, Corel Linux and Stormix's Storm Linux, were started in 1999.[10] The 2.2 release in 2000 was dedicated to Joel Klecker, a developer who died of Duchenne muscular dystrophy.[27]

In late 2000, the project made major changes to archive and release management, reorganizing software archive processes with new "package pools" and creating a testing distribution as an ongoing, relatively stable staging area for the next release. In the same year, developers began holding an annual conference called DebConf with talks and workshops for developers and technical users.[10]

In July 2002, the Project released version 3.0, codenamed woody, (starting at version 1.1, debian releases have been named after a character in the movie Toy Story, a trend which continues to the present), a stable release which would see relatively few updates until the following release.[10]

The long release cycle employed by the Debian Project during this time drew considerable criticism from the free software community, and this triggered the creation of Ubuntu in 2004, to date one of the most influential Debian forks.

2005–present

The 3.1 sarge release was made in June 2005. There were many major changes in the sarge release, mostly due to the large time it took to freeze and release the distribution. Not only did this release update over 73% of the software shipped in the previous version, but it also included much more software than previous releases, almost doubling in size with over 9,000 new packages.[28] A new installer replaced the aging boot-floppies installer with a modular design. This allowed advanced installations (with RAID, XFS and LVM support) including hardware detection, making installations easier for novice users. The installation system also boasted full internationalization support as the software was translated into almost forty languages. An installation manual and comprehensive release notes were released in ten and fifteen different languages respectively. This release included the efforts of the Debian-Edu/Skolelinux, Debian-Med and Debian-Accessibility sub-projects which boosted the number of educational packages and those with a medical affiliation as well as packages designed especially for people with disabilities.[10]

In 2006, as a result of a much-publicized dispute, Mozilla software was rebranded in Debian, with Firefox becoming Iceweasel, Thunderbird becoming Icedove, along with other Mozilla programs. The Mozilla Corporation stated that Debian may not use the Firefox trademark if it distributes Firefox with modifications which have not been approved by the Mozilla Corporation. Two prominent reasons that Debian modifies the Firefox software are to change the artwork, and to provide security patches. Debian Free Software Guidelines consider Mozilla's artwork non-free. Debian provides long term support for older versions of Firefox in the stable release, where Mozilla prefers that old versions are not supported. The software programs developed largely by the Mozilla Corporation were rebranded but the programs' source codes remained the same only with minor differences.[29]

Debian 4.0 (etch) was released April 8, 2007 for the same number of architectures as in sarge. It included the AMD64 port but dropped support for m68k. The m68k port was, however, still available in the unstable distribution. There were around 18,200 binary packages maintained by more than 1,030 Debian developers.[10]

Debian 5.0 (lenny) was released February 14, 2009 after 22 months of development. It includes over 25,000 software packages. Support was added for Marvell's Orion platform and for netbooks such as the Asus Eee PC.[1] The release was dedicated to Thiemo Seufer, an active developer and member of the community who died in a car accident on December 26, 2008.[30]

Project organization

Diagram of the organizational structure of the project

The Debian Project is a volunteer organization with three foundational documents:

Currently, the project includes more than a thousand developers. Each of them sustains some niche in the project, be it package maintenance, software documentation, maintaining the project infrastructure, quality assurance, or release coordination. Package maintainers have jurisdiction over their own packages, although packages are increasingly co-maintained. Other tasks are usually handled by the domain of smaller, more collaborative groups of developers.

The project maintains official mailing lists and conferences for communication and coordination between developers.[31] For issues with single packages or domains, a public bug tracking system is used by developers and end-users. Informally, Internet Relay Chat channels (primarily on the OFTC and freenode networks) are used for communication among developers and users as well.

Together, the Developers may make binding general decisions by way of a General Resolution or election. All voting is conducted by Cloneproof Schwartz Sequential Dropping, a Condorcet method of voting. A Project Leader is elected once per year by a vote of the Developers; in April 2010, Stefano Zacchiroli was voted into this position, succeeding Steve McIntyre. The Debian Project Leader has several special powers, but this power is far from absolute and is rarely used. Under a General Resolution, the Developers may, among other things, recall the leader, reverse a decision by him or his delegates, and amend the constitution and other foundational documents.

The Leader sometimes delegates authority to other developers in order for them to perform specialized tasks. Generally this means that a leader delegates someone to start a new group for a new task, and gradually a team gets formed that carries on doing the work and regularly expands or reduces their ranks as they think is best and as the circumstances allow.

A role in Debian with a similar importance to the Project Leader's is that of a Release Manager. Release Managers set goals for the next release, supervise the processes, and make the final decision as to when to release.[32][33]

Project leaders

The Debian Project Leader (DPL) is the public face of the project and defines the current direction of the project.[34] The project has had the following leaders:[35]

  1. Ian Murdock (August 1993 – March 1996), founder of the Debian Project
  2. Bruce Perens (April 1996 – December 1997)
  3. Ian Jackson (January 1998 – December 1998)
  4. Wichert Akkerman (January 1999 – March 2001)
  5. Ben Collins (April 2001 – April 2002)
  6. Bdale Garbee (April 2002 – April 2003)
  7. Martin Michlmayr (March 2003 – March 2005)
  8. Branden Robinson (April 2005 – April 2006)
  9. Anthony Towns (April 2006 – April 2007)
  10. Sam Hocevar (April 2007 – April 2008)
  11. Steve McIntyre (April 2008 – April 2010)
  12. Stefano Zacchiroli (April 2010 – Present)

A supplemental position, Debian Second in Charge (2IC), was created by Anthony Towns. Steve McIntyre held the position between April 2006 and April 2007. Since April 2009 this position is held by Luk Claes. Stefano Zacchiroli—the current project leader—stated in his platform that he will not have a second in charge[36]

Release managers

Note that this list includes the active release managers; it does not include the release assistants (first introduced in 2003) and the retiring managers ("release wizards").[32]

Developer recruitment, motivation, and resignation

The Debian project has a steady influx of applicants wishing to become developers. These applicants must undergo an elaborate vetting process which establishes their identity, motivation, understanding of the project's goals (embodied in the Social Contract), and technical competence.[38]

Debian Developers join the Project for a number of reasons; some that have been cited in the past include:[39]

Debian Developers may resign their positions at any time by orphaning the packages they were responsible for and sending a notice to the developers and the keyring maintainer (so that their upload authorization can be revoked).

Development procedures

Software packages in development are either uploaded to the project distribution named unstable (also known as sid), or to the experimental repository. Software packages uploaded to unstable are normally versions stable enough to be released by the original upstream developer, but with the added Debian-specific packaging and other modifications introduced by Debian developers. These additions may be new and untested. Software not ready yet for the unstable distribution is typically placed in the experimental repository.[40]

After a version of a software package has remained in unstable for a certain length of time (depending on the urgency of the software's changes), that package is automatically migrated to the testing distribution. The package's migration to testing occurs only if no serious (release-critical) bugs in the package are reported and if other software needed for package functionality qualifies for inclusion in testing.[40]

Since updates to Debian software packages between official releases do not contain new features, some choose to use the testing and unstable distributions for their newer packages. However, these distributions are less tested than stable, and unstable does not receive timely security updates. In particular, incautious upgrades to working unstable packages can sometimes seriously break software functionality.[41] Since September 9, 2005[42] the testing distribution's security updates have been provided by the testing security team.[43]

After the packages in testing have matured and the goals for the next release are met, the testing distribution becomes the next stable release. The timing of the release is decided by the Release Managers, and in the past the exact date was rarely announced earlier than a couple of weeks beforehand;[44] however, this is expected to change in 2010 to a release model where times are known in advance.[45][46]

Package maintenance

Flowchart of the life cycle of a Debian package

Each Debian software package has a maintainer who keeps track of releases by the "upstream" authors of the software and ensures that the package is compliant with Debian Policy, coheres with the rest of the distribution, and meets the standards of quality of Debian. In relations with users and other developers, the maintainer uses the bug tracking system to follow up on bug reports and fix bugs. Typically, there is only one maintainer for a single package, but increasingly small teams of developers "co-maintain" larger and more complex packages and groups of packages.[47]

Periodically, a package maintainer makes a release of a package by uploading it to the "incoming" directory of the Debian package archive (or an "upload queue" which periodically batch-transmits packages to the incoming directory). Package uploads are automatically processed to ensure that they are well-formed (all the requisite files are in place) and that the package is digitally signed by a Debian developer using OpenPGP-compatible software. All Debian developers have public keys.[48] Packages are signed to be able to reject uploads from hostile outsiders to the project, and to permit accountability in the event that a package contains a serious bug, a violation of policy, or malicious code.

If the package in incoming is found to be validly signed and well-formed, it is installed into the archive into an area called the "pool" and distributed every day to hundreds of mirrors worldwide. Initially, all package uploads accepted into the archive are only available in the "unstable" suite of packages, which contains the most up-to-date version of each package.

However, new code is also untried code, and those packages are only distributed with clear disclaimers. For packages to become candidates for the next "stable" release of the Debian distribution, they first need to be included in the "testing" suite. The requirements for a package to be included in "testing" is that it:[49][50]

Thus, a release-critical bug in a package on which many packages depend, such as a shared library, may prevent many packages from entering the "testing" area, because that library is considered deficient.

Periodically, the Release Manager publishes guidelines to the developers in order to ready the release, and in accordance with them eventually decides to make a release. This occurs when all important software is reasonably up-to-date in the release-candidate suite for all architectures for which a release is planned, and when any other goals set by the Release Manager have been met. At that time, all packages in the release-candidate suite ("testing") become part of the released suite ("stable").

It is possible for a package – particularly an old, stable, and seldom-updated one – to belong to more than one suite at the same time. The suites are simply collections of pointers into the package "pool" mentioned above.

Security information and policy

The Debian Project, being free software, handles security policy through public disclosure rather than through security through obscurity. Many advisories are coordinated with other free software vendors and are published the same day a vulnerability is made public. Debian has a security audit team that reviews the archive looking for new or unfixed security bugs. Debian also participates in security standardization efforts: the Debian security advisories are compatible with the Common Vulnerabilities and Exposures (CVE) dictionary, and Debian is represented in the Board of the Open Vulnerability and Assessment Language (OVAL) project.[51]

The Debian Project offers extensive documentation and tools to harden a Debian installation both manually and automatically.[52] SELinux (Security-Enhanced Linux) packages are installed by default though not enabled.[53]

Releases

Debian Installer

As of August 2009, the latest stable release is version 5.0, code name lenny.[54] When a new version is released, the previous stable is labeled oldstable; currently, this is version 4.0, code name etch.

In addition, a stable release gets minor updates (called point releases). The numbering scheme for the point releases up to Debian 4.0 was to include the letter r (for release) after the main version number (e.g. 4.0) and then the number of the point release; for example, the latest point release of version 4.0 (etch) as of 8 April 2009 is 4.0r8.[55] From Debian 5.0 (lenny), the numbering scheme of point releases has been changed and conforms to the GNU version numbering standard; so, for example, the first point release of Debian 5.0 was 5.0.1 (instead of 5.0r1).[56]

The Debian security team releases security updates for the latest stable major release, as well as for the previous stable release for one year.[41] Version 4.0 etch was released on 8 April 2007, and the security team supported version 3.1 Sarge until March 31, 2008. For most uses it is strongly recommended to run a system which receives security updates. The testing distribution also receives security updates, but not in as timely a manner as stable.[57]

For Debian 6.0 (squeeze) a new policy of time-based development freezes on a two-year cycle was announced. Time-based freezes are intended to allow the Debian Project to blend the predictability of time based releases with its policy of feature based releases. The new freeze policy aims to provide better predictability of releases for users of the Debian distribution, and to allow Debian developers to do better long-term planning. Debian developers expect that a two-year release cycle will give more time for disruptive changes, reducing inconveniences caused for users. Having predictable freezes was expected to reduce overall freeze time. The squeeze cycle was intended to be especially short to "get into the new cycle".[45] However this short freeze cycle for squeeze was abandoned[46].

The code names of Debian releases are names of characters from the film Toy Story. The unstable, development distribution is permanently nicknamed sid, after the emotionally unstable next-door neighbor boy who regularly destroyed toys.[40] On 3 September 2010, the name of the release after squeeze was announced[58]: it will be called wheezy, after the the rubber toy penguin with a red bow tie in Toy Story 2.

Release history

Debian has made ten major stable releases:[10]

Legend
Release no longer supported
Release still supported
Future release
Version Code name Release date Ports Packages Supported until Notes
1.1 buzz 17 June 1996 1 474 1996-09 [59] dpkg, ELF transition, Linux 2.0[10]
1.2 rex 12 December 1996 1 848 1996 -
1.3 bo 5 June 1997 1 974 1997 -
2.0 hamm 24 July 1998 2 ≈ 1,500 1998 glibc transition, new architecture: m68k[10]
2.1 slink 9 March 1999 4 ≈ 2,250 2000-12 APT, new architectures: alpha, sparc[10]
2.2 potato 15 August 2000 6 ≈ 3,900 2003-04 New architectures: arm, powerpc[60]
3.0 woody 19 July 2002 11 ≈ 8,500 2006-08 New architectures: hppa, ia64, mips, mipsel, s390[10]
3.1 sarge 6 June 2005 11 ≈ 15,400 2008-04[41] Modular installer, semi-official amd64 support.
4.0 etch 8 April 2007 11 ≈ 18,000 2010-02-15[61] New architecture: amd64, dropped architecture: m68k.[62] Graphical installer, udev transition, modular X.Org transition. Latest update 4.0r9 was released 2010-05-22[63]
5.0[64] lenny[65] 14 February 2009[44] 11+1[A] ≈ 23,000[1] TBA[41] New architecture/binary ABI: armel.[66] SPARC 32-bit hardware support dropped.[67] Full Eee PC support.[68] Latest update 5.0.6 was released 2010-09-04.[69]
6.0[70] squeeze[71] 2010[72] 10+2[B] TBA TBA squeeze was frozen August 6, 2010.[73] The release team is now focusing on stabilizing the release.

New architectures/kernels: kfreebsd-i386, kfreebsd-amd64, dropped architecture: alpha.[74] eglibc instead of glibc.[75] Dependency-based boot sequence, which allows for parallel init script processing.[76] Remove old library such as GTK 1.[77]

7.0[58] wheezy[58] TBA TBA TBA TBA
A 11 architectures + 1 additional ARM binary ABI (armel)[1]
B 10 architectures with Linux kernel + 2 architectures with FreeBSD kernel[74]


A Debian 4.0 Box Cover[78]

Due to an incident involving a CD vendor who made an unofficial and broken release labeled 1.0, an official 1.0 release was never made.[10]

Distributions

The Debian Project offers 3 distributions to choose from, each with different characteristics. The distributions include packages which comply with the Debian Free Software Guidelines (DFSG), which are included inside the main repositories.[79]

Additional repositories

The Debian Free Software Guidelines (DFSG) adhere to a relatively strict interpretation of free and open source software (FOSS), although it is still not endorsed by the Free Software Foundation as it includes and supports a proprietary repository, documentation that recommends non-free software and includes binary blobs. [80] [81]. In accordance with its guidelines, a relatively small number of packages are excluded from the distributions' main repositories and included inside the non-free and contrib repositories. These two repositories are not officially part of Debian GNU/Linux.

These are other repositories available in Debian:

Third-party repositories

These repositories are not part of the Debian Project, they are maintained by third party organizations. They contain packages that are either more modern than the ones found in stable or include packages that are not included in the Debian Project for a variety of reasons such as: e.g. alleged possible patent infringement, binary-only/no sources, or special too restrictive licenses. Their use requires precise configuration of the priority of the repositories to be merged; otherwise these packages may not integrate correctly into the system, and may cause problems upgrading or conflicts between packages from different sources. The Debian Project discourages the use of these repositories as they are not part of the project.

Repository access

Debian provides repositories of more than twenty five thousand installable packages. Any of the repositories can be added or modified by directly editing the files in /etc/apt/sources.list.d/ or modifying the settings in APT front-ends.[83] This is an example of the contents of this file:

deb http://ftp.us.debian.org/debian lenny main contrib non-free

Installation of software packages

dpkg, installing local .deb packages

dpkg is the base of the Debian package management system. dpkg is a command-line utility to install, remove, and provide information about local .deb packages.[84] Gdebi is a tool that expands the functionality of dpkg by not only installing local .deb packages but also fetching and installing dependencies from online repositories. Gdebi can be used both in a graphical interface and by command-line.

APT, installing packages from online repositories

APT expands the functionality of dpkg by searching, fetching and installing packages from online repositories along with their dependencies, either from binary files or by compiling source code. It can also upgrade packages and upgrade the whole distribution to a new release.

Installing and removing software in Debian.
Synaptic: a GUI for APT.
Package installed with aptitude.

Graphical front-ends

Command-line front-ends

Ports

As of the current stable release, the official ports are:[87]

In addition, in the official testing/unstable distribution are:

Unofficial ports are available as part of the unstable distribution at http://www.debian-ports.org:

The m68k port was the second official one in Debian, and has been part of five stable Debian releases. Due to its failure to meet the release criteria, it has been dropped before the release of etch.

Kernels

Linux kernel versions

Debian release Debian Linux kernel Latest Linux kernel version just before the Debian release
1.1 buzz on 17 June 1996 2.0[10][89] 2.0.14 on 6 June 1996[90]
1.2 rex on 12 December 1996 2.0.27[91] 2.0.27 on 1 December 1996[92]
1.3 bo on 5 June 1997 2.0.29
2.0.30 [93]
for 1.3.1 also 2.0.33[93]
2.0.30 on 8 April 1997 [92]

2.1.42 on 29 May 1997[94]

2.0 hamm on 24 July 1998 2.0.33
2.0.34[95]
2.0.35 on 13 July 1998[92]

2.1.110 on 21 July 1998[94]

2.1 slink on 9 March 1999 2.0.35-3
2.0.36-3
2.1.125-1
2.2.1-1[96]
2.2.3 on 9 March 1999[97]
2.2 potato on 15 August 2000 2.2.16[60] 2.2.16 on 7 June 2000[97]

2.3.99-pre9 on 23 May 2000[98]

3.0 woody on 19 July 2002 2.2.20
2.4.18[99]
2.2.21 on 20 May 2002[97]

2.4.18 on 25 February 2002[100]
2.5.26 on 16 July 2002[101]

3.1 sarge on 6 June 2005 2.4.27
2.6.8[102]
2.4.30 on 4 April 2005 [100]

2.6.11.11 on 27 May 2005[103]

4.0 etch on 8 April 2007 2.6.18[62] 2.6.20.6 on 6 April 2007[103]
5.0 lenny on 14 February 2009 2.6.26[1] 2.6.28.5 on 12 February 2009[103]
6.0 squeeze on TBA 2010 2.6.32[73] probably 2.6.36

Non-Linux kernels

There have been no official stable releases of the non-Linux ports yet, so currently Debian is exclusively a Linux distribution. However, there has been recent development on using the FreeBSD kernel in Debian/kFreeBSD.

Debian Live

A Debian Live system is a version of Debian that can be booted directly from removable media (CDs, DVDs, USB keys) or via netboot without having to install it on the hard drive.[104] This allows the user to try out Debian before installing it or use it as a boot-disk. There are prebuilt Debian Live CD images for rescue, standard, GNOME, KDE Plasma Workspaces, Xfce and LXDE for several architectures. A hard disk installation can be achieved using the Debian Installer included in the CD. Customized CD images can be built using live-helper.[105] Live-helper can not only generate CD Images, but also bootable DVDs, images for USB thumb drives, or netboot images. Live-magic is a GUI for live-helper. Ging is a Debian GNU/kFreeBSD Live CD.[106]

Debian Eee PC

The Debian Eee PC project's goal is full support for the ASUS Eee PC in Debian.[107]

Desktop environments

Debian offers stable and testing CD images specifically built for GNOME (the default), KDE Plasma Workspaces, Xfce and LXDE.[108] Less common window managers such as Enlightenment, Fluxbox, GNUstep, IceWM, Window Maker and others can also be installed.

Hardware requirements

Debian has no hardware requirements beyond those of the Linux kernel and the GNU tool-sets (gcc, coreutils, bash, etc.). Therefore, any architecture or platform to which these packages have been ported, and for which a Debian port exists, can run Debian.[109]

Linux, and therefore Debian, supports many processors or "symmetric multiprocessing". This does not inhibit support for single-processor systems.[109]

Debian's recommended system requirements differ depending on the level of installation, which corresponds to increased numbers of installed components:[110]

Install Type Minimal RAM[110] Recommended RAM[110] Hard Drive space used[110]
No Desktop 64 MB 256 MB 1 GB
With Desktop 64 MB 512 MB 5 GB

A 1 GHz processor is the minimum recommended for desktop systems.[110]

The real minimum memory requirements are a lot less than the numbers listed in this table. Depending on the architecture, it is possible to install Debian with as little as 20 MB for s390 or 48 MB for i386 and amd64. The same is applicable for disk space requirements which depend on the packages to be installed.[110]

It is possible to run graphical user interfaces on older or low-end systems, but it is recommended to install window managers instead which are less resource-intensive than desktop environments.[110] The LXDE desktop environment was released with lenny and has much lower processor and memory usages compared with GNOME or Plasma Desktop.[53]

Depending on the nature of the server, RAM and disk space requirements can vary widely.[110]

The release of lenny (5.0) coincided with the release of Emdebian 1.0, which gives much more control over packing Debian for extremely resource-constrained embedded systems.[111] So far only ARM (EABI) is supported for the smallest Crush flavour.[111]

Response

Debian was ranked second only to Ubuntu (which is itself derived from Debian) for Most Used Linux Distribution for both Personal and Organizational use in a 2007 survey by SurveyMonkey.com.[112] Debian won the 2007 poll on Server Distribution of the Year by LinuxQuestions.org.[113]

Both the Debian distribution and their website have won various awards from different organizations. Debian was awarded the 2004 Readers' Choice Award for Favorite Linux Distribution by the Linux Journal.[114] A total of fifteen other awards have been awarded throughout Debian's lifetime including Best Linux Distribution.[115]

Debian has also received negative assessments. In May 2008, a Debian Developer revealed his discovery that changes made in 2006 to the random number generator in the version of the openssl package distributed with Debian and other Debian-based distributions such as Ubuntu or Knoppix, made a variety of security keys vulnerable to a random number generator attack.[116][117] The security weakness was caused by changes made to the openssl code by another Debian Developer in response to memory debugger warnings.[118] The security hole was soon patched by Debian and others, but the complete resolution procedure was cumbersome for users because it involved regenerating all affected keys, and it drew criticism to Debian's practice of making Debian-specific changes to software.

Richard Stallman and the Free Software Foundation (FSF) have criticized the Debian Project for providing the non-free repository, rather than excluding this type of software entirely,[119] an opinion also echoed by some in Debian including the then-Project Leader Wichert Akkerman.[120] The internal dissent in the Debian Project regarding the non-free section has persisted, but the last time it came to a vote in 2006, a large majority decided to keep it.[121]

During the release cycles of Woody and Sarge, the Debian Project drew considerable criticism from the free software community because of the extended period between stable releases. This triggered the creation of Ubuntu in 2004. Ubuntu has releases every 6 months which are forks of Debian's unstable distribution with bug fixes and other modifications. However, it may be more appropriate to compare Debian releases (which continue to be supported after the release of subsequent versions) to Ubuntu's Long Term Support releases (which are supported for three years for desktops and five years for servers);[122] Ubuntu produces a new LTS release every two years, which is therefore similar to Debian's new two-year release cycle for post-Debian 6.0 releases.[45]

When in need of updated versions of software, it is possible to use Debian testing instead of stable as it usually contains more modern, though slightly less stable packages instead of using Ubuntu's Debian-based unstable distribution. Another alternative is to use Debian backports, which are "recompiled packages from testing (mostly) and unstable (in a few cases only, e.g. security updates), so they will run without new libraries (wherever it is possible) on a stable Debian distribution".[123]

See also

References

  1. 1.0 1.1 1.2 1.3 1.4 "Debian GNU/Linux 5.0 released". Debian. 2009-02-14. http://www.debian.org/News/2009/20090214.en.html. Retrieved 2009-02-15. 
  2. "License information". Debian. http://www.debian.org/legal/licenses/. Retrieved 2009-02-28. 
  3. ""What Does Free Mean? or What do you mean by Free Software?"". Debian official website. The Debian Project. http://debian.org/intro/free. Retrieved 2009-12-01. 
  4. "Debian.org - What is Debian?". Debian official website. The Debian Project. http://debian.org/index.en.html. Retrieved 2009-12-01. 
  5. "Linux Distributions – Facts and Figures". distrowatch.com. http://distrowatch.com/stats.php?section=popularity. Retrieved 2008-10-31. 
  6. Debian Social Contract on Debian homepage
  7. "The Debian GNU/Linux FAQ – Definitions and overview". Debian. http://www.debian.org/doc/manuals/debian-faq/ch-basic_defs.en.html#s-whatisdebian. Retrieved 2008-05-12. 
  8. 8.0 8.1 "The Debian Constitution". Debian. http://www.debian.org/devel/constitution. Retrieved 2008-05-18. 
  9. 9.0 9.1 9.2 "Debian Social Contract". Debian. http://www.debian.org/social_contract. Retrieved 2008-11-21. 
  10. 10.00 10.01 10.02 10.03 10.04 10.05 10.06 10.07 10.08 10.09 10.10 10.11 10.12 10.13 "A Brief History of Debian: Debian Releases". Debian. http://www.debian.org/doc/manuals/project-history/ch-releases.en.html. Retrieved 2008-10-31. 
  11. "SPI Projects – Welcome to SPI". www.spi-inc.org. http://www.spi-inc.org/projects/spi-projects. Retrieved 2008-05-12. 
  12. Hancock, Terry. "Impossible thing #1: Developing efficient, well engineered free software like Debian GNU/Linux". www.freesoftwaremagazine.com. http://www.freesoftwaremagazine.com/books/mihrfc/impossible_thing_1_developing_efficient_free_software_like_gnu_debian. Retrieved 2008-10-31. 
  13. Ohloh.net, Debian GNU/Linux
  14. 14.0 14.1 "The Debian GNU/Linux FAQ – Choosing a Debian distribution". Debian. http://www.debian.org/doc/manuals/debian-faq/ch-choosing.en.html#s3.2. Retrieved 2008-05-12. 
  15. "Debian "lenny" Release Information". Debian. http://www.debian.org/releases/stable/. Retrieved 2009-02-16. 
  16. "The Debian GNU/Linux FAQ – Compatibility issues". Debian. http://www.debian.org/doc/manuals/debian-faq/ch-compat.en.html#s-arches. Retrieved 2008-05-12. 
  17. "Downloading Debian CD/DVD images via HTtp://FTP". Debian. http://www.debian.org/CD/http-ftp/. Retrieved 2008-12-11. 
  18. "Installing Debian GNU/Linux via the Internet". Debian. http://www.debian.org/distrib/netinst. Retrieved 2008-12-11. 
  19. "Debian GNU/Linux on CDs". Debian. http://www.debian.org/CD/. Retrieved 2009-01-06. 
  20. "A Brief History of Debian – Introduction – What is the Debian Project?". Debian. http://www.debian.org/doc/manuals/project-history/ch-intro.en.html. Retrieved 2008-05-12. 
  21. Ian A Murdock (1993-08-16). "New release under development; suggestions requested". comp.os.linux.development. (Web link). Retrieved on 2008-10-31.
  22. Hillesley, Richard (2007-11-05). "Debian and the grass roots of Linux". http://www.itpro.co.uk/applications/features/135084/debian-and-the-grass-roots-of-linux.html. Retrieved 2008-10-31. 
  23. Murdock, Ian A (1993-08-16). "NNTP Subject: New release under development; suggestions requested". http://groups.google.com/group/comp.os.linux.development/msg/a32d4e2ef3bcdcc6. Retrieved 2007-08-17. 
  24. "Appendix A – The Debian Manifesto". Debian. http://www.debian.org/doc/manuals/project-history/ap-manifesto.en.html. Retrieved 2008-08-13. 
  25. "Getting Started with Linux – Lesson 1 / About Debian". www.linux.org. http://www.linux.org/lessons/beginner/l1/lesson1e.html. Retrieved 2008-10-31. 
  26. A Brief History of Debian Chapter 1 - Introduction -- What is the Debian Project?
  27. Debian.org
  28. "Chapter 2 - What's new in Debian GNU/Linux 3.1". Debian. http://www.debian.org/releases/sarge/i386/release-notes/ch-whats-new.en.html. Retrieved 2010-08-05. 
  29. Hoover, Lisa (2006-10-10). "Behind the Debian and Mozilla dispute over use of Firefox". linux.com. http://www.linux.com/feature/57675. Retrieved 2009-02-09. 
  30. "Appendix C. Lenny dedicated to Thiemo Seufer". Debian. 2009-02-14. http://www.debian.org/releases/stable/i386/release-notes/apc.en.html. Retrieved 2009-02-22. 
  31. "The Debian GNU/Linux FAQ – Getting support for Debian GNU/Linux". Debian. http://www.debian.org/doc/manuals/debian-faq/ch-support.en.html#s12.2.1. Retrieved 2008-05-12. 
  32. 32.0 32.1 "The Debian organization web page". Debian. http://www.debian.org/intro/organization. Retrieved 2008-11-01. 
  33. O'Mahony, Siobhan; Fabrizio Ferraro (2008-04). "The Emergence of Governance in an Open Source Community". ualberta.ca. http://www.business.ualberta.ca/tcc/documents/TII_3_OMahoney_Ferraro_final.pdf. Retrieved 2008-11-01. 
  34. What does a Debian Project Leader do www.debian.org
  35. "A Brief History of Debian Chapter 2 – Leadership". Debian. http://www.debian.org/doc/manuals/project-history/ch-leaders. Retrieved 2008-11-01. 
  36. "DPL Platform - Stefano Zacchiroli". Debian. http://www.debian.org/vote/2010/platforms/zack. Retrieved 2010-04-16. 
  37. "Bits from the (chilly) release team". http://lists.debian.org/debian-devel-announce/2010/08/msg00000.html. 
  38. "Debian New Maintainers". Debian. http://www.debian.org/devel/join/newmaint. Retrieved 2008-10-31. 
  39. "How You Can Join". Debian. http://www.debian.org/devel/join/. Retrieved 2008-10-31. 
  40. 40.0 40.1 40.2 "The Debian GNU/Linux FAQ Chapter 6 – The Debian FTP archives". Debian. http://www.us.debian.org/doc/FAQ/ch-ftparchives. Retrieved 2007-05-24. 
  41. 41.0 41.1 41.2 41.3 "Debian security FAQ". Debian. 2007-02-28. http://www.debian.org/security/faq. Retrieved 2008-10-21. 
  42. Hess, Joey (2005-09-05). "announcing the beginning of security support for testing". debian-devel-announce mailing list. http://lists.debian.org/debian-devel-announce/2005/09/msg00006.html. Retrieved 2007-04-20. 
  43. "Debian testing security team". Debian. http://testing-security.debian.net. Retrieved 2008-10-31. 
  44. 44.0 44.1 Simó, Adeodato (2009-02-01). "Release update: deep freeze, planned dates, and remaining bugs". debian-devel-announce@lists.debian.org mailing list. http://lists.debian.org/debian-devel-announce/2009/02/msg00000.html. Retrieved 2009-02-07. 
  45. 45.0 45.1 45.2 45.3 "Debian decides to adopt time-based release freezes". Debian. 2009-07-29. http://www.debian.org/News/2009/20090729. Retrieved 2009-09-12. 
  46. 46.0 46.1 "Debian GNU/Linux 6.0 "Squeeze" release goals". Debian. 2009-07-30. http://www.debian.org/News/2009/20090730. Retrieved 2009-12-01. 
  47. "General Resolution: Endorse the concept of Debian Maintainers". Debian. http://www.debian.org/vote/2007/vote_003. Retrieved 2008-12-13. 
  48. "Debian Developer's Reference". Debian. http://www.debian.org/doc/developers-reference/new-maintainer.html#registering. Retrieved 2010-10-09. 
  49. "Debian Developer Reference". Debian. http://www.debian.org/doc/developers-reference/pkgs.html#testing. Retrieved 2008-10-31. 
  50. "Debian "testing" distribution". Debian. http://www.debian.org/devel/testing. Retrieved 2008-11-24. 
  51. "Security Information". Debian. http://www.debian.org/security/. Retrieved 2008-12-13. 
  52. "Securing Debian Manual". Debian. http://www.debian.org/doc/user-manuals#securing. Retrieved 2008-12-13. 
  53. 53.0 53.1 53.2 53.3 "Chapter 2. What's new in Debian GNU/Linux 5.0". Debian. http://www.debian.org/releases/stable/amd64/release-notes/ch-whats-new.en.html. Retrieved 2009-02-18. 
  54. "Debian Releases". Debian. http://www.us.debian.org/releases/. Retrieved 2010-08-31. 
  55. "Debian GNU/Linux 4.0 updated". Debian. 2009-04-08. http://www.debian.org/News/2009/20090408. Retrieved 2009-07-21. 
  56. Brockschmidt, Marc (2009-02-15). "Debian squeeze waiting for development". Debian. http://lists.debian.org/debian-devel-announce/2009/02/msg00003.html. Retrieved 2009-02-15. 
  57. "Debian testing security team". Debian. http://secure-testing-master.debian.net/. Retrieved 2008-10-31. 
  58. 58.0 58.1 58.2 "Release Update: freeze guidelines, transitions, BSP, rc bug fixes". debian-devel-announce mailing list. 2010-09-03. http://lists.debian.org/debian-devel-announce/2010/09/msg00000.html. Retrieved 2010-09-03. 
  59. date of file packages, http://archive.debian.org/debian/dists/Debian-1.1/main/binary-i386/Packages.gz 
  60. 60.0 60.1 Schulze, Martin (2000-08-15). "Debian GNU/Linux 2.2, the "Joel 'Espy' Klecker" release". debian-announce mailing list. http://lists.debian.org/debian-announce/debian-announce-2000/msg00009.html. 
  61. "Debian Wiki: Debian Releases > Debian Etch". Debian. http://wiki.debian.org/DebianEtch. Retrieved 2010-02-16. 
  62. 62.0 62.1 Schmehl, Alexander (2007-04-08). "Debian GNU/Linux 4.0 released". debian-announce mailing list. http://lists.debian.org/debian-announce/debian-announce-2007/msg00002.html. Retrieved 2008-11-01. 
  63. "Debian Wiki DebianEtch". Debian. http://wiki.debian.org/DebianEtch. Retrieved 2009-02-10. 
  64. Brockschmidt, Marc (2008-03-02). "Release Update: Release numbering, goals, armel architecture, BSPs". debian-announce mailing list. http://lists.debian.org/debian-devel-announce/2008/03/msg00001.html. Retrieved 2008-11-01. 
  65. Langasek, Steve (2006-11-16). "testing d-i Release Candidate 1 and more release adjustments". debian-devel-announce mailing list. http://lists.debian.org/debian-devel-announce/2006/11/msg00004.html. Retrieved 2008-11-01. 
  66. Brockschmidt, Marc (2008-06-02). "Release Update: arch status, major transitions finished, freeze coming up". debian-devel-announce mailing list. http://lists.debian.org/debian-devel-announce/2008/06/msg00000.html. Retrieved 2008-11-01. 
  67. Smakov, Jurij (2007-07-18). "Retiring the sparc32 port". debian-devel-announce mailing list. http://lists.debian.org/debian-devel-announce/2007/07/msg00006.html. Retrieved 2008-10-31. 
  68. Armstrong, Ben (2008-08-03). "Bits from the Debian Eee PC team, summer 2008". debian-devel-announce mailing list. http://lists.debian.org/debian-devel-announce/2008/08/msg00002.html. Retrieved 2008-10-31. 
  69. "Debian -- News -- Debian GNU/Linux 5.0 updated". Debian. 2010-09-04. http://www.debian.org/News/2010/20100904. Retrieved 2010-09-04. 
  70. "Debian GNU/Linux 6.0 – Release Notes". Debian. http://www.debian.org/releases/squeeze/releasenotes. Retrieved 2009-02-15. 
  71. Claes, Luk (2008-09-01). "Release Update: freeze guidelines, testing, BSP, rc bug fixes". debian-devel-announce mailing list. http://lists.debian.org/debian-devel-announce/2008/09/msg00000.html. Retrieved 2008-10-31. 
  72. Claes, Luk. "Bits from the release team: Planning, request for help". http://lists.debian.org/debian-devel-announce/2009/10/msg00002.html. Retrieved 2009-10-18. 
  73. 73.0 73.1 "Debian 6.0 "Squeeze" Frozen". Debian. http://www.debian.org/News/2010/20100806. Retrieved 2010-08-16. 
  74. 74.0 74.1 Barth, Andreas. "Release architectures". http://lists.debian.org/debian-devel-announce/2009/10/msg00000.html. Retrieved 2009-10-01. 
  75. "Aurelien's weblog: Debian is switching to EGLIBC". Aurélien Jarno. http://blog.aurel32.net/?p=47. Retrieved 2009-05-21. 
  76. http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot
  77. http://wiki.debian.org/ReleaseGoals/RemoveOldLibs
  78. "Artwork for Debian CDs". Debian. http://www.debian.org/CD/artwork/. Retrieved 2009-01-11. 
  79. 79.0 79.1 79.2 79.3 79.4 79.5 79.6 "Chapter 4. Resources for Debian Developers". Debian. http://www.debian.org/doc/developers-reference/resources.html. Retrieved 2008-10-31. 
  80. "Explaining Why We Don't Endorse Other Systems". FSF. http://www.gnu.org/philosophy/common-distros.html#Debian. Retrieved 2010-02-21. 
  81. "Debian permits binary blobs". DesktopLinux.com. http://www.desktoplinux.com/news/NS8731622728.html. Retrieved 2009-12-29. 
  82. "The debian-volatile Project". Debian. http://www.debian.org/volatile/. Retrieved 2008-10-31. 
  83. "Chapter 2 – Basic Configuration". Debian. http://www.debian.org/doc/manuals/apt-howto/ch-basico.en.html. Retrieved 2008-10-31. 
  84. "Debian Wiki dpkg". Debian. http://wiki.debian.org/dpkg. Retrieved 2008-12-10. 
  85. "Debian Wiki Synaptic". Debian. http://wiki.debian.org/Synaptic. Retrieved 2008-12-10. 
  86. "Debian Wiki Aptitude". Debian. http://wiki.debian.org/Aptitude. Retrieved 2008-12-10. 
  87. "Debian Ports". Debian. http://www.debian.org/ports/. Retrieved 2009-02-15. 
  88. "Supported Hardware". Debian. http://www.debian.org/releases/stable/i386/ch02s01.html.en. Retrieved 2008-10-11. 
  89. Debian.org
  90. Kernel.org
  91. Debian.org
  92. 92.0 92.1 92.2 Kernel.org
  93. 93.0 93.1 kernel-image-* packages from Debian 1.3 i386 Packages file
  94. 94.0 94.1 Kernel.org
  95. kernel-image-* packages from Debian 2.0 i386 Packages file
  96. Debian.org
  97. 97.0 97.1 97.2 Kernel.org
  98. Kernel.org
  99. Kernel.org
  100. 100.0 100.1 Kernel.org
  101. Kernel.org
  102. Debian.org
  103. 103.0 103.1 103.2 Kernel.org
  104. "DebianLive – Debian Wiki". Debian. http://wiki.debian.org/DebianLive/. Retrieved 2008-10-31. 
  105. "DebianLive/ live-helper – Debian Wiki". Debian. http://live.debian.net/devel/live-helper/. Retrieved 2010-05-14. 
  106. "The Ging FAQ". Debian. http://glibc-bsd.alioth.debian.org/ging/. Retrieved 2008-10-31. 
  107. DebianEeePC Debian Wiki
  108. "Debian GNU/Linux 4.0 released". Debian. 2008-04-08. http://www.debian.org/News/2007/20070408. Retrieved 2008-10-31. 
  109. 109.0 109.1 "2.1. Supported Hardware Chapter 2. System Requirements". Debian. http://www.debian.org/releases/stable/i386/ch02s01.html.en. Retrieved 2008-11-02. 
  110. 110.0 110.1 110.2 110.3 110.4 110.5 110.6 110.7 "Meeting Minimum Hardware Requirements". Debian. http://www.debian.org/releases/stable/i386/ch03s04.html.en. Retrieved 2008-10-31. 
  111. 111.0 111.1 Emdebian.org
  112. "2007 Linux Desktop/Client Survey Results". surveymonkey.com. http://www.surveymonkey.com/sr.aspx?sm=WE9PoU_2bO_2b9Incc1aPjQTMvqIHQ7sZ6Y5sA1yP920aDE_3d. Retrieved 2008-11-02. 
  113. "2007 LinuxQuestions.org Members Choice Awards". LinuxQuestions.org. http://www.linuxquestions.org/questions/2007-linuxquestions.org-members-choice-awards-79/server-distribution-of-the-year-610200/. Retrieved 2008-11-02. 
  114. "2004 Readers' Choice Awards". linuxjournal.com. 2004-11-01. http://www.linuxjournal.com/article/7724. Retrieved 2008-11-02. 
  115. "Awards". Debian. http://www.debian.org/misc/awards. Retrieved 2008-11-02. 
  116. "DSA-1571-1 openssl – predictable random number generator". Debian. http://www.debian.org/security/2008/dsa-1571. Retrieved 2008-10-31. 
  117. "CVE-2008-0166 (under review)". mitre.org. http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0166. Retrieved 2008-10-31. 
  118. "Debian OpenSSL Security Flaw". cryptogon.com. 2008-05-26. http://cryptogon.com/?p=2635. Retrieved 2008-10-31. 
  119. "Explaining Why We Don't Endorse Other Systems". GNU Project - Free Software Foundation. http://www.gnu.org/philosophy/common-distros.html. Retrieved 2009-09-28. 
  120. "Moving contrib and non-free [out] of master.debian.org". debian-devel mailing list. 1999-06-21. http://lists.debian.org/debian-vote/1999/06/msg00043.html. 
  121. "General Resolution: Status of the non-free section". Debian. http://www.debian.org/vote/2004/vote_002. Retrieved 2009-09-28. 
  122. Ubuntu Wiki – LTS
  123. "Debian Backports". Debian Project. http://www.backports.org/dokuwiki. Retrieved 2010-04-10. 

Further reading

  • Krafft, Martin F. (2005). The Debian System. U.S.A.: No Starch Press. pp. 608. ISBN 1-59327-069-0. http://www.debiansystem.info. 
  • Mako Hill, Benjamin (2005). Debian GNU/Linux 3.1 Bible. John Wiley & Sons. pp. 672. ISBN 0-7645-7644-5. 
  • Jurzik, Heike (2005). Debian GNU / Linux. Galileo Press GmbH. pp. 630. ISBN 3898426270. 
  • Schoblick, Robert (2005). Debian / GNU Linux. BHV Verlag. pp. 767. ISBN 3826681517. 
  • Bellomo, Michael (2000). Debian GNU/Linux for Dummies. Hungry Minds. pp. 324. ISBN 0764507133. 
  • McCarty, Bill (1999). Learning Debian GNU/Linux. O'Reilly. pp. 360. ISBN 1565927052. 
  • Goerzen, John (1999). Debian Gnu/Linux: Guide to Installation and Usage. New Riders Pub. pp. 158. ISBN 0735709149. 
  • Scheetz, Dale (1998). The Debian Linux User's Guide. Linux Press. pp. 268. ISBN 0965957519. 

External links

Third party repositories